package utils

import (
	"github.com/spf13/viper"
	"log"
)

// ParseYaml 解析yaml配置
func ParseYaml(cfgPath string, parseDest any) error {
	vp := viper.New()
	vp.SetConfigFile(cfgPath)
	vp.SetConfigType("yaml")
	if err := vp.ReadInConfig(); err != nil {
		log.Printf("加载yaml配置[%s]出错: %s \n", cfgPath, err)
		return err
	}
	vp.WatchConfig()
	if err := vp.Unmarshal(parseDest); err != nil {
		log.Printf("解析yaml配置[%s]出错: %s \n", cfgPath, err)
		return err
	}
	return nil
}
